A storage network environment may comprise one or more storage clusters of storage controllers (e.g., nodes) configured to provide clients with access to user data stored within storage devices. For example, a first storage cluster may comprise a first storage controller hosting a first storage virtual machine (e.g., a virtual server) configured to provide clients with access to user data stored, through a storage aggregate, across one or more storage devices owned by the first storage cluster. A second storage cluster may be configured according to a disaster recovery relationship with respect to the first storage cluster, such that user data (e.g., client I/O operations may be split into two I/O operations that write user data to a local storage device at the first storage cluster and mirror the user data to a remote storage device at the second storage cluster so that two copies of user data are maintained across storage clusters), configuration data (e.g., volume information, a replication policy, a network interface configuration, etc.), and write caching data (e.g., data cached within a non-volatile random-access memory (NVRAM) of the first storage controller before being written/flushed to a storage device during a consistency point) are replicated from the first storage cluster to the second storage cluster and vice versa. In this way, when a disaster occurs at the first storage cluster and clients are unable to access user data within the first storage device because the first storage controller may be unavailable or may have failed from the disaster, a second storage controller of the second storage cluster may provide clients with failover client access (e.g., a temporary switchover of ownership of storage devices and storage virtual machines) to replicated user data that was replicated from the first storage device to a mirrored storage device accessible to the second storage controller. When the first storage cluster recovers from the disaster, the second storage cluster may switch back (e.g., a switch back of ownership of the storage devices and storage virtual machines) to the first storage cluster, such that the first storage controller provides clients with access to user data from the first storage device (e.g., the first storage device may be synchronized with any changes made to user data and/or configuration data within the mirrored storage device during switchover operation by the second storage controller). In this way, user data, cached data, and configuration data may be backed up between storage clusters for disaster recovery.
A storage cluster may locally host multiple local storage virtual machines that are actively providing clients with access to user data of the storage cluster. The storage virtual machines are replicated to a remote storage cluster, such that replicated storage virtual machines at the remote storage cluster are dormant until a switchover occurs from the storage cluster to the remote storage cluster due to a failure of the storage cluster. The remote storage cluster may locally host virtual storage machines that are actively providing clients with access to user data of the remote storage cluster. Such storage virtual machines are replicated to the storage cluster, such that replicated storage virtual machines at the storage cluster are dormant until a switchover occurs from the remote storage cluster to the storage cluster due to a failure of the remote storage cluster. Unfortunately, load balancing technology may not exist for balancing workload between storage clusters of a storage network environment. Thus, if the storage cluster experiences a relatively higher load than the remote storage cluster, clients of the storage cluster may experience increased latency and/or other performance issues.